#include <iostream>
#include <cstring>
#include <algorithm>

using namespace std;
const int N = 10010;

int a[N];
int n;
void f(int a[],int l,int r)
{
    int x=a[l],i=l,j=r;
    if(l>=r) return;
    while(i<j)
    {
        while(i<j&&a[j]>=x) j--;
        a[i]=a[j];
        while(i<j&&a[i]<=x) i++;
        a[j]=a[i];
        
    }
    a[i]=x;
    cout << a[0];
    for(int i=1;i<n;i++)
     cout<<' '<<a[i];
     cout<<endl;
    f(a,l,i-1);
    f(a,i+1,r);
}

int main()
{
    while(~scanf("%d",&n))
    {
        for(int i=0;i<n;i++)  cin>>a[i];
    f(a,0,n-1);
    }
    
    return 0;
}